home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / lists / mint / l_0399 / 135 < prev    next >
Internet Message Format  |  1994-08-27  |  1KB

  1. From: Julian F. Reschke <julian@GOEDEL.UNI-MUENSTER.DE>
  2. Subject: Re: Bug in crt0.cpp ?
  3. Date: Mon, 8 Mar 93 14:48:12 MET DST
  4. In-Reply-To: <9303081334.AA15165@math.uni-muenster.de>; from "Ulrich Kuehn" at Mar 08, 93 2:34 pm
  5.  
  6. > Hi,
  7. > I just came across an interesting point: in crt0, there is a test for
  8. > the program being started as accessory:
  9. >         subl    a6, a6          | clear a6 for debuggers
  10. >         cmpw    #0, a0          | test if acc or program
  11. >         beq     __startprg      | if a program, go elsewhere
  12. >         tstl    a0@(36)         | also test parent basepage pointer
  13. >         bne     __startprg      | for accs, it must be 0
  14. >         movel   a0, Base        | acc basepage is in A0
  15. >         lea     a0@(252), sp    | use the command line as a temporary stack
  16. >         jmp     __acc_main      | function is in crtinit.c
  17. > But atari has documented that accessories are started with a0 containing
  18. > the basepage pointer, they said nothing about the pointer to the parent's
  19. > basepage.
  20. > Why is there a test for the parent pointer to be zero?
  21. > It might break some accessories written with gcc, or am I too pessimistic?
  22. > Ulrich
  23.  
  24. Especially when started from MultiTOS, I think.
  25.  
  26. -- 
  27. ________________ cut here _________________________
  28. Julian F. Reschke, Hensenstr. 142, D-W4400 Muenster
  29.   eMail: julian@math.uni-muenster.de, jr@ms.maus.de
  30. ________ correct me if I'm wrong __________________
  31.